package com.xbongbong.pro.statistic.manager.feign;

import com.xbongbong.paas.toolbox.wrap.XbbResponse;
import com.xbongbong.pro.statistic.pojo.FieldAnalysisPojo;
import com.xbongbong.pro.statistic.pojo.dto.FieldAnalysisDTO;
import com.xbongbong.pro.statistic.pojo.vo.FieldAnalysisVO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * @author 李翔
 * @date 2023/1/30
 * @description
 */
@FeignClient(name = "xbb-work-order-statistic")
public interface StatisticsWorkOrderV2FeignClient {

//    @RequestMapping(value = "/pro/v1/workOrderV2/chart/getPoolNameMap", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
//    XbbResponse<FieldAnalygetPoolNameMapsisVO> (@RequestBody FieldAnalysisDTO fieldAnalysisDTO, @RequestParam("lang") String lang);

    @RequestMapping(value = "/pro/v1/workOrderV2/chart/getNodeNameMap", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
    XbbResponse<FieldAnalysisVO> getNodeNameMap(@RequestBody FieldAnalysisDTO fieldAnalysisDTO, @RequestParam("lang") String lang);

    @RequestMapping(value = "/pro/v1/workOrderV2/chart/getSlaRuleNameMap", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
    XbbResponse<FieldAnalysisVO> getSlaRuleNameMap(@RequestBody FieldAnalysisDTO fieldAnalysisDTO, @RequestParam("lang") String lang);

    @RequestMapping(value = "/pro/v1/workOrderV2/chart/getWorkOrderFormNameMap", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
    XbbResponse<FieldAnalysisVO> getWorkOrderFormNameMap(@RequestBody FieldAnalysisDTO fieldAnalysisDTO, @RequestParam("lang") String lang);
}
